package com.hmall.search.service;


import com.hmall.common.dto.PageDTO;
import com.hmall.common.pojo.Item;
import com.hmall.search.pojo.ItemDoc;
import com.hmall.search.pojo.RequestParams;

import java.util.List;
import java.util.Map;

public interface SearchService {
    /**
     * 自动补全
     * @param key 关键字
     * @return
     */
    List<String> suggetions(String key);

    /**
     * 查询所有索引库的数据并显示
     * @param params
     * @return
     */
    PageDTO<ItemDoc> search(RequestParams params);

    /**
     * 聚合过滤
     * @param params 请求参数
     * @return
     */
    Map<String, List<String>> getFilters(RequestParams params);


    /**
     * 接收消息删除数据
     * @param id 商品id
     */
    void deleteById(Long id);

    /**
     * 接收消息新增或修改数据
     * @param id 商品id
     */
    void insertById(Long id);
}
